1. Field of the Invention
This invention relates to a logic circuit for task processing in a multitasking environment and to a method of operating such a circuit.
2. Description of the Related Art
Multitasking is a concept which has been known for a long time in connection with mainframe computer systems. In recent years multitasking personal computers have also been marketed. Essential to the concept of a multitasking system is a mechanism which enables the current state of a physical processor performing a task to be saved in a manner which enables it to be restored at a later time and to set up the processor with a previously saved or defined state for performing a new task. Conventionally this has been done by a set of procedures storing the contents of all the critical processor registers on saving a task and then reinstating the stored values in the processor registers when restoring the task at a later time.
As a result of the continued trend towards multitasking systems, there has developed a need to enable tasks being performed by coprocessors or coprocessing logic associated with a main processor for performing a particular set of processes (e.g., I/O processing) to be saved or restored in order that the coprocessor or coprocessing logic can operate in a multitasking mode. The difficulty is that this logic may be very complicated indeed and may contain many hundreds of values which need to be saved in order to preserve the state information.
An object of the present invention is therefore to provide a mechanism whereby task switching may be reliably and efficiently performed, even for complex logic circuits.